/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Persistencia;

import Entidades.DiretorGeral;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;

/**
 *
 * @author Thalyta
 */
public final class PersistenciaDiretorgeral {
    ArrayList <DiretorGeral> diretoresgeral ;
    
    
    public PersistenciaDiretorgeral() {
     diretoresgeral  = new ArrayList<>();
     leituraDiretorgeral();
    }
    
    public void leituraDiretorgeral() {
        try {
            File arq = new File("src/AquirvosTXT/DiretorGeral.dat");//Dados aqui e o nome do pacote e clientes.dat e o nome do meu arquivo para salvar nele
            FileInputStream fi = new FileInputStream(arq.getAbsolutePath());
            try (ObjectInputStream oi = new ObjectInputStream(fi)) {
                diretoresgeral = (ArrayList) oi.readObject();
            }
        } catch (IOException | ClassNotFoundException e) {
            System.out.println(e.getMessage());
        }
    }

    public void gravaDiretorgeral() {
        try {
            FileOutputStream fo = new FileOutputStream("src/AquirvosTXT/DiretorGeral.dat");//Dados aqui e o nome do pacote e clientes.dat e o nome do meu arquivo para salvar nele
            try (ObjectOutputStream oo = new ObjectOutputStream(fo)) {
                oo.writeObject(diretoresgeral);
            }
            System.out.println("Dados gravados com sucesso");
        } catch (Exception e) {
            System.err.println("Erro ao serializar " + e.getMessage());
        }  
    }  
    public void excluirDiretorgeral(DiretorGeral a){
        
        int i;
        for (i = 0; i < diretoresgeral.size(); i++){
            
            if (a.getNomeusuario().equals(diretoresgeral.get(i).getNomeusuario()))
                diretoresgeral.remove(i);
                
        }
    }

     public DiretorGeral PesquisaDiretores(String cod){
        
           DiretorGeral diretores = null;
        int i;
        for (i = 0; i < diretoresgeral.size(); i++){
            
        if (cod.equals(diretoresgeral.get(i).getNome()) == true)
                diretores = diretoresgeral.get(i) ;
              
                
        }
         return diretores;
      
    } 
    public ArrayList<DiretorGeral> getDiretoresgeral() {
        return diretoresgeral;
    }

    public void setDiretoresgeral(ArrayList<DiretorGeral> diretoresgeral) {
        this.diretoresgeral = diretoresgeral;
    }
  

    
    public void adicinarAgencia(DiretorGeral a){
        diretoresgeral.add(a);
    }
 
public int tam(){

   int tam ;
   tam = this.diretoresgeral.size();
    return tam ;

}
}
